/******************************************************************************************
 *   Obsługa transmisji szeregowej (uart.h)
 *
 *   Utworzono: 29-01-2011
 *       Autor: Marcin
 *****************************************************************************************/
#ifndef UART_H_
#define UART_H_

/******************************************************************************************
 *	Makrodefinicje															 			 *
 *****************************************************************************************/
#define UART_BAUD   	9600
#define USE_U2X			0

#define USE_UART_ISR	0

#define USE_UART_STR_P 	1
#define USE_UART_STR_E	0
#define USE_UART_INT	1
#define USE_UART_HEX	0

#define ADD_ZERO		1
#define NO_ZERO			2

#if USE_U2X == 1
	#define _UBRR	(F_CPU/8/UART_BAUD-1)	// UBRR dla U2X=1
#else
	#define _UBRR	(F_CPU/16/UART_BAUD-1)	// UBRR dla U2X=0
#endif

/******************************************************************************************
 *	Deklaracje dołączanych plików nagłówkowych i bibliotek								 *
 *****************************************************************************************/
#include <avr/io.h>
#include <avr/pgmspace.h>
#include <avr/eeprom.h>
#include <stdlib.h>

/******************************************************************************************
 *	Deklaracje funkcji								 									 *
 *****************************************************************************************/
void uart_init(uint16_t baud);
void uart_write_char(unsigned char data);
unsigned char uart_read_char(void);
void uart_write_text(char *str);
void uart_write_text_P(const char *str);
void uart_write_text_E(char *str);
void uart_write_int(int val, uint8_t zero);
void uart_write_hex(int val);
void uart_clear(void);
void uart_home(void);
void uart_new_line(void);

#endif /* UART_H_ */

/******************************************************************************************
 *	Koniec pliku uart.h
 *****************************************************************************************/
